class A
{
    public static int i;
    public static int j = 20;
    public A(int j)
    {
        this.j = j;
    }
    public A()
    {

    }

}
public class Teststatic
{
    public static void main(String[] args)
    {
        A aa = new A();

        System.out.printf("%d\n",A.i);         //ok
        System.out.printf("%d\n",aa.i);        //ok

        A aa1 = new A(10);
        A aa2 = new A();
        System.out.printf("%d\n",aa2.j);       //输出结果为10；
    }
}
/*
static：
可以通过类名的方式直接访问，也可以通过类对象名的方式访问（静态属性和方法属于类本身，在创建类的时候在静态区生成）
非静态的方法可以访问静态的属性和方法，但是静态的方法不能访问非静态的方法和属性
静态属性仍然可以修改（和C语言有点不一样，C语言中由static修饰后就只能赋初值）    
*/